
classDef A extends B{
	A();
	void metodo(int i);
}

classDef B {
	B();
	void metodo(int i);
	void metodo3();
}

classDef Main{
  Main();
  int prueba(int i);
}

class B {
System s;
	B(){}
	void metodo(int i){
		s = new System();
		s.printSln("estoy en metodo clase B");
	}
	void metodo3(){
		s = new System();
		s.printSln("estoy en clase B en el metodoB");
	}
	
	
	
}

class A extends B{
System s;
	A(){
		//super.metodo(2);
		metodo(2);
		s = new System();
		s.printSln("estoy en clase A");
	}	
	void metodo(int i){
		s = new System();
		s.printSln("estoy en metodo de clase A");
	}
}

class Main{ 
A varA;
B varB;
System s;
int nro,nro1,nro2;

  Main(){
	s = new System();
	nro2 = 4;
	//nro = nro1 = nro2=8;
	
	varA = new A();
	s.printSln("sale bien");
	nro = 5 + this.prueba(20);
	s.printIln(nro);
	s.printIln(nro1);
	s.printIln(nro2);
  }
  int prueba(int i){
	return i + 4;
  }
  
  
}
